iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 6
1

Cash 請大家在自己帳號下完成 miniConda 的安裝,同時也設定各自的 Aliases,利用 conda 建立環境,安裝了 Tensorflow,基本上已經可以執行一些深度學習的範例程式。但是負責深度學習的所需的Python數值計算的 Fields 遭遇了困難,他不熟悉 Python。

Pete 自願跟大家稍微講解一下 Python,同樣的他採『師父引進門修行看個人』策略。

延續 Cash 已經請大家為自己打造 Aliases,他請大家下

alias

看有無出現 alias py36='source activate py36' 這一行。 沒有就請別人幫忙一下補做昨天要求編輯過 ~/.bash_aliases;如果有 py36 這行alias,執行

py36

https://ithelp.ithome.com.tw/upload/images/20181019/201052834PWtAedRjV.png

接著他要大家嘗試使用 Jupyter,理由是他看了許多深度學習的範例或是教學程式,通常不是很大的程式,不需要拿牛刀式的IDE來開發,而且很多直接就是用 iPython Notebook寫的,Notebook是將原來某種語言平台 Console的操作,擴展成可互動式計算,還提供一個web-based的前端來處理整個括開發、編輯、文件製作及執行程式結果立即呈現。不熟悉這個工具估計很難生存。

Jupyter 可支援很多語言(R,Java,JavaScript,GO等等),Python 是其中之一,以下圖來看 Notebook Server 並不處理執行程式,而是藉由 Kernel 來進行。所以我們必須安裝 iPython Kernel 讓iPython Notebook 可以進行。(當我們執行『pip install jupyter 』時,預設就把 iPython,Notebook 等等程式包也一起安裝近來。)


(取材自 jupyter.readthedocs.io)

pip install jupyter
jupyter notebook --port 8588 --ip 0.0.0.0

其中 『--ip 0.0.0.0』 是要讓其他非Server的機器可以連上來;而『--port 8588』是因為他們共七位,在上一篇文章已經分配好Pete的使用 85xx,這樣就不會發生大家同時做練習搶同一個預設的Port 8888。

還沒來得及跟大家說明如何連上去,多數人已經知道用 『http://z.y.z.a:8588/?token=e8cfba4813...』 連上,同時稍微搜Google再摸索一下,立即會使用了。

佳麗突發奇想,那他是否可以用 Jupyter 寫用戶的一些簡易教材,感覺要交互式的講解程式模塊與其執行結果,用這工具來做還蠻順的。但是如果可以將整個Notebook轉成她已經熟悉的 Markdown 格式就更好了。

Fields 終於有可以貢獻的地方了,他前幾天開始了解機器 Mxnet 時,發現簡體中文的教學網站,預設的文件格式就是Markdown。這解決讀寫 github 上面有相當多 md 副檔名的範例程式問題。稍微找一下,就知道如何安裝了:

pip install notedown
jupyter notebook --port 8588 --ip 0.0.0.0 \
   --NotebookApp.contents_manager_class='notedown.NotedownContentsManager'

Molly 問 Pete 他個人有無推薦 Python IDE,Pete先前用過 PyCharm,也與 Anaconda 整合很好。但是不確定如果 Python 環境是在 docker 裡面,是否還能整在一起。Pete 最終還是建議先在 Jupyter Notebook 上作業,未來真有大型模組要開發再談 IDE。

備註:

專案緣起記錄在 【UP, Scrum 與 AI專案】


上一篇
Anaconda Python 環境
下一篇
機器學習所需的Python 環境
系列文
深度學習所需入門知識--一位初學者的認知31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言